package com.cjxt.ams.domain;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.ToString;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * @author JK_a
 * @version V1.0
 * @Description:角色实体类
 * @className: Role
 * @date 2021/11/19 15:45
 * @company:华勤技术股份有限公司
 * @copyright: Copyright (c) 2021
 */

@Data
@ToString
@TableName("sys_role")
public class Role {

    /**
     * 角色id
     */
    @TableId(value = "id")
    private Integer roleId;

    /**
     * 角色名称
     */
    @TableField(value = "role_name")
    private String roleName;

    /**
     * 角色状态
     */
    private String status;

    /**
     * 部门id
     */
    @TableField(value = "dept_id")
    private Integer deptId;

    /**
     * 标记
     */
    private String remark;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @TableField(value = "create_time",fill = FieldFill.INSERT)
    private Date createTime;

    /**
     * 更新时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @TableField(value = "update_time",fill = FieldFill.UPDATE)
    private Date updateTime;

    /**
     * 创建人
     */
    @TableField(value = "create_by")
    private String createBy;

    /**
     * 修改人
     */
    @TableField(value = "update_by")
    private String updateBy;

    /**
     * 部门名称
     */
    @TableField(exist = false)
    private String deptName;

    /**
     * 菜单id列表
     */
    @TableField(exist = false)
    private List<Integer> menuIdList;

    /**
     * 部门id列表
     */
    @TableField(exist = false)
    private List<Integer> deptIdList;

    /**
     * 当前页数
     */
    @TableField(exist = false)
    private long page;

    /**
     * 最大页码
     */
    @TableField(exist = false)
    private long limit;

    /**
     * 菜单名
     */
    @TableField(exist = false)
    private String menuName;

    /**
     * 菜单id
     */
    @TableField(exist = false)
    private String id;
}
